Sep 03, 2006, 10:52 PM // 22:52
|
#41
|
Site Contributor
|
What Jeff Strain said is like other MMO's, all the "dumb" assets such as music are on your computer. And Phaern Majes, no one has ever said where the monster position, skills being used, drops, etc are being controlled from. No one has said direclty if the server is keeping track of everything. In a typical MMO every step that is taken is recorded on the company server. Same with every monster, every hit, every bit of damage. The question is, in order to save server resources would it not be logical to offload processing from a centralized server to a client with the server only policing data versus recording. This requires less server processing, which when mutliplied by the 2 million users who own the game would result in significant savings for the company. Hence no monthly fee. (But this is regardless, because with the 2 expansions released every 6 months with ArenaNet's business model it amounts to nearly the same.)
We are not talking about where the assets are stored but where other assets such as the monsters are controlled. He never answered what that includes, intelligent assets are your character, your gold your storage and equipment, how an instance starts. When you walk into an instance there are monsters. Most likely that's sent from the server to your client. But what we are asking is once that's been sent out, where is it controlled from.
|
|
|
Sep 03, 2006, 11:43 PM // 23:43
|
#42
|
Desert Nomad
Join Date: Sep 2005
Location: Anywhere but up
Guild: The Panserbjorne [ROAR]
Profession: R/Mo
|
Ah ok thanks. I'm not really into the networking area so I sometimes require a more in depth explaination
|
|
|
Sep 04, 2006, 12:42 AM // 00:42
|
#43
|
Frost Gate Guardian
Join Date: Jul 2006
Location: AUSSIE TROLLING CREW - CAPSLOCK CONSULTANT
Guild: [Dong]
Profession: Mo/
|
Quote:
Originally Posted by awesome sauce
Wait... so noone can read the code to see what it does? Surely someone can just open the gw.dat or client file and see whats going on. What is it written in, C++, or something along those lines? I'm no expert by any means about programming, but the programmers can't be the only ones to be able to read it, could they?
|
When you code a program, that code is compiled from human-readable code into machine code, a much lower level form of language that the computer understands directly. In order for a person to read the contents of those files, it would require reverse engineering, in order to convert it back to it's original form.
|
|
|
Sep 04, 2006, 01:24 AM // 01:24
|
#44
|
Wilds Pathfinder
Join Date: Jun 2005
Location: Europa
|
Quote:
Originally Posted by Loviatar
|
Not exactly the one i was looking for, but this quote by Jeff Strain is good enough for me..
Quote:
Originally Posted by Jeff Strain
..the server is always the boss and only provides information to the client when necessary.
|
|
|
|
Sep 04, 2006, 02:40 AM // 02:40
|
#45
|
Lion's Arch Merchant
Join Date: May 2005
Location: Zaragoza, Spain
Guild: [ODL]
Profession: E/Mo
|
Quote:
Originally Posted by seut
Sorry, i'm a little slow in writing english
Jeff Strain explained parts of Guild Wars' architecture in an interview (i think it was before the release of Prophecies, unfortunately i cannot find it).
|
I read that too back in April 2005, just before the Prophecies launch. He said the game would be hackproof because everything was stored on the servers, and nothing "editable" on the clients. If we assume some of the state of your char is stored in your comp, and it tells the server lets say when you log in again, some kind of hack is possible, even if the client tried to send the status ASAP. You could always alt+f4, hack the state and log in with 250 ectos
If Jeff's goal was to make the game hackproof, I'm sure he ended up in this very same conclusion much faster than me
Quote:
Originally Posted by LagunaCid
And what would decided whose PC would be the 'peer'? My internet sucks, for example, I get disconnected from it numerous times when playing. And I have never dragged other players.
|
I think we can ditch the P2P theory, with a P2P design there's a lot of info travelling from player(s) to player(s) to even think it could be playable with a dialup connection. Also as someone said (forgot to quote sorry) there would be hangs and errors because of the host(s) dropping when someone intentionally leaves the instance.
Quote:
Originally Posted by Shanaeri Rynale
Interesting thoughts. I always assumed that every time your exited a town a new address space was created on a server(a virtual GW world just for your party) you then played in this address space until you reached a town. Everything you need for the mission is created for you at the time, monsters, quests, scripts, NPC etcs.
Just like proper operating systems your address space is sealed off from all the others to protect you and others from things like crashes, hacks and exploits.
Thats why it's called an 'instance'
The entire hardware that GW runs on is probably a huge cluster of servers(or a few BIG ones) that are split into ones that control towns(thats why we have size limits on districts) as a district size is probably the limit a server/cluster can deal with. You then have the game instance servers/clusters
Now as for reconnents, the reason why it's fairly hard is to allow reconnects they would have to poke a hole through that nice sealed of little bubble thus leaving it exposed to what else is going on in that server (crashes, hacks, etc etc). Therefore it's a security and integrity issue as much as it is a game one. To get a secure system you need as few holes in between address spaces as possible.
My cobbled together on a beer mat theory on how it fits together is as below.
Now, A possible solution would be to periodically store a copy of the entire address space and allow it to be dissolved and recreated based on this copy. This could be done either automatically, or by say the purchase of an in game scroll of Divine Backup . The downside to this is that you need more capacity than needed as you require more space to store these backup address spaces.
it *could* be pure P2P but even P2P has reconnect facilities, so I expect any P2P aspests are if you like tying your parties connections to this address space we talked about. Imagine a big ball of wool being knitted by using seperate yarns of wool(each one of your party members) and the required info from the server, then when it's done that ball of wool is called an instance
So again, I believe reconnects are architecturally possible but may represent integrity and security issues at are unnaceptable to AN.
|
I think I should quote this post because adds a lot to the discussion and didn't get enough attention. Security issues seemed like a first in Jeff's goals when designing GW net subsystem, so it can be very probable it's one of the reasons.
Another possibility is: to make everything cheaper (bandwidth, HDD and memory sizes, etc), is that instance servers are sending all the stats to the main server, but the main server doesn't store which instance server is receiving it from, because he trusts it. It's one of the ANet servers If you think of it, you're avoiding to send/receive/store a lot of info because: how many instances can be active on any time? tens of thousands? hundreds? Cities are crowded, sure, but I want to think most of the people is 80-90% of the time actually playing the game and the rest trading/buying (and yes, dancing ). If this is the case (or part of it) then a solution is viable, and maybe that's why Gaile said it was being investigated.
Last edited by momo2oo2; Sep 04, 2006 at 02:46 AM // 02:46..
|
|
|
Sep 04, 2006, 03:28 AM // 03:28
|
#46
|
Krytan Explorer
|
You couldn't get more info from these people Inde? Who are they and how do they know all this stuff?
|
|
|
Sep 04, 2006, 05:07 AM // 05:07
|
#47
|
The Fallen One
Join Date: Dec 2005
Location: Oblivion
Guild: Irrelevant
Profession: Mo/Me
|
Ummm.....can I clarify something first?
Arenanet doesnt run their servers... they have no servers... they design and code Guildwars. NCSoft runs their servers, just as they run the City of Heroes servers, and the Auto Assault servers. NCSoft is responsible, Arenanet I am sure helps to maintain the code on them, but NCSoft runs them and supplies Arenanet with the server space. So I think NCSoft has enough servers to make it so that it is completely server side, with little client interaction. That is how they will be able to create a reconnect feature.
|
|
|
Sep 04, 2006, 05:21 AM // 05:21
|
#48
|
Site Contributor
|
Those servers probably aren't in a dedicated NCSoft data center, I'm sure it's outsourced like most MMOG's to places like AT&T. But ANet still writes the code that runs the servers, NCSoft just provides the boxes.
|
|
|
Sep 04, 2006, 06:00 AM // 06:00
|
#49
|
Wilds Pathfinder
Join Date: Jun 2005
Location: Europa
|
Weren't the US servers* 'moved' to NCSoft's own data-center in Austin this spring? (i remember a day of downtime for that)
European servers* are hosted at a data-center around Frankfurt am Main, Germany (close to the DE-CIX, a major european backbone node).
Quote:
Originally Posted by momo2oo2
If we assume some of the state of your char is stored in your comp, and it tells the server lets say when you log in again, some kind of hack is possible, even if the client tried to send the status ASAP. You could always alt+f4, hack the state and log in with 250 ectos.
|
Mike & Gail wrote some very nice lines about this kind of hacking in 2004:
http://www.arena.net/news/articles/m...cle040802.html
*i mean software servers and not physical boxes by this
|
|
|
Sep 04, 2006, 01:30 PM // 13:30
|
#50
|
Krytan Explorer
Join Date: Mar 2005
Location: Brighton, UK
|
Just to confirm what you've found by digging up old interviews with Jeff Strain:
The Guild Wars client on your PC is completely dumb. It displays graphics and sends/receives data from the servers run by us. There's no Peer-to-Peer at all, the client is simply incapable of handling anything like that.
For those wondering about disconnects and the much-talked about reconnect feature, take a moment to think about the technology that our servers have built in that no other game uses at the current time. Namely: the patching system; the unified global architecture allowing *everyone* in the world to play with or against each other; the fact that you can be playing on an old build at the same time that someone else is already on the new build etc etc. All that adds up to a big challenge for adding a new feature into the server code that was not there from day 1. Before anything gets rolled out, it needs to be incorporated into a highly complex system in such a way that it does not adversely impact on the stability of the servers.
Yes, sometimes a Code 7 is going to be because of an error at the servers. Hardware does break down sometimes, data can get lost at times. That happens in all games. However it is incorrect for anyone to lay all the blame on the servers as is often done.
You do need to remember that the internet is described as the 'web' for a reason. Your data travels through several 'stopover' points between your PC and the servers. If a key stopover (eg Singapore for many Australasian users) suffers a failure or has problems then you may experience dropouts from GW. That's not something we can do anything about, and neither can you (other than pressure ISPs for a rapid response).
There's also a lot you can do on your own PC to minimise the chances of a disconnect. Make sure GW is the only program demanding internet access while playing. Make sure your anti-virus has not decided to block some of your GW data (some antivirus are now actively scanning port 80 and may suddenly decide to block GW traffic even though you have GW internet access allowed in your firewall). Make sure you are not running any programs that use the same ports, as a sudden spike in traffic may result in congestion and a disconnect (eg a widgets program, RSS feeds and the like using ports 80 or 6112). Apparently innocuous little programs could be causing issues.
Oh, and don't play over a wireless or satellite connection unless you absoltuely have to. Sure they work most of the time, but they are prone to occasional momentary dropouts that may cause a disconnect from the game without resetting your actual internet connection.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT. The time now is 02:07 PM // 14:07.
|